iT邦幫忙

2022 iThome 鐵人賽

DAY 7
0

這篇文章會說到JavaScript的運算式及運算子,今天先簡單介紹兩種:

  • 算術運算子
  • 比較運算子

算術運算子

在JavaScript中算術運算子也是我們所熟悉的四則運算(加、減、乘、除),算是非常單純的運算子

,在一些程式語言中也是非常常見的。

+ 加法
- 減法
* 乘法
/ 除法
% 餘數
** 指數
++ 將運算元加 1
-- 將運算元減 1
//以最基礎的四則運算做舉例
(1+99)/2 //50

上方舉例為數字加上數字,那如果數字加上字串,會有什麼結果呢?

1+"100" // 1100

當運算時發現其中一方為字串,將會進行「自動轉型」為字串後連接在一起

若遇到特殊數字時,會有什麼結果呢?

Infinity + Infinity //Infinity
-Infinity + -Infinity //-Infinity
-Infinity + Infinity //NaN

而在運算式中若其中一者為NaN,結果將會得到NaN

99+NaN // NaN

若運算式中遇到基本型別ex:布林、undefined、null時JavaScript將會將其轉為number,再進行運算

1+true // 2 運算中true被作為1
1+false // 1 運算中false被作為0
1+undefined // NaN 無法轉為數值
1+null // null為0

比較運算子

用以比較兩側的值,可比較純值、物件、運算式……等,比較後基於比較的結果回傳邏輯值true或false。

< 少於
> 大於
<= 小於等於
>= 大於等於
== 等於
=== 嚴格的等於
!= 不等於
!== 嚴格的布等於
2>1 //true

==、===的差別

二者都是用於判斷兩個值是否相等

  • === 不會替數值做自動轉型
  • == 會替數值做自動轉型

簡單來說就是==的工作量更大一些,因為如果比較的值的型別不同,他就會進行強制型別轉換。也可以稱作比較寬鬆的比較。


上一篇
【Day6】布林、null、undefined
下一篇
【Day8】賦值運算子、邏輯運算子
系列文
喜歡打程式嗎?從JavaScript基礎來進行興趣初探!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言